Refactoring JHOTDRAW’s Undo concern to ASPECTJ
نویسنده
چکیده
In this paper we discuss an approach to the aspect-oriented refactoring of the Undo concern in an open-source Java system. A number of challenges and considerations of the proposed solution are analyzed for providing useful feedback about how the employed aspect language could better support the refactoring to aspects. We also consider the unpluggability property of a concern as an estimate of its refactoring costs and propose a number of research questions to measure the improvements due to aspect refactoring.
منابع مشابه
Using Programming Laws to Modularize Concurrency in a Replicated Database Application
As the use of AspectJ grows, it seems appropriate to define refactorings for that language. Most of the already defined aspect-oriented refactorings do not have a formal basis to ensure it preserves behaviour. This paper shows the application of programming laws and derived refactorings to separate a crosscutting concern from a system’s core logic using AspectJ. We used programming laws to incr...
متن کاملRefactoring to Aspects – an Experiment
Aspect-oriented (AO) programming proposes a solution to the crosscutting problem in Object-oriented (OO) programming by supporting the modularization of crosscutting concerns with new composition mechanisms. This paper evaluates the solution through aspect mining two existing Java code-bases and then refactoring crosscutting concerns found in them into aspects using AspectJ. It documents the pr...
متن کاملTowards an Approach for Aspect-Oriented Software Reengineering
This paper presents a reengineering approach to help in migrating pure object-oriented codes to a mixture of objects and aspects. The approach focuses on aspect-mining to identify potential crosscutting concerns to be modeled and implemented as aspects, and on refactoring techniques to reorganize the code according to aspectoriented paradigm by using code transformations it is possible to recov...
متن کاملRefactoring and Code Generation Tools for AspectJ
Code generation and refactoring tools have been quite useful for developing objectoriented applications [4, 2]. They increase development productivity by automating tedious, repetitive, and error-prone tasks. By reducing the number of programming errors, they also help to improve software quality. Based on our experience developing AspectJ [5] applications, we believe that aspect-aware code gen...
متن کامل